package hasthi.common;
import org.apache.xmlbeans.XmlObject;

/**
 * Interface for a notifier used  with in Hasthi
 * @author hperera
 */

public interface ManagementNotifier {
    /**
     * Send the given XML fragment
     * @param eventData
     * @throws HasthiException
     */
    public void sendEvent(XmlObject eventData)throws HasthiException;
    /**
     * @return Name of this notifier
     */
    public String getName();
    /**
     * Callback invoked when sending a event failed, 
     * @param e
     * @return if returned true, remove this notifier from notification lists
     */
    public boolean sendingEventFalied(Exception e);
    
    public void shutDown()throws HasthiException;
}

